// pages/ucenter/index/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userInfo: {   // 用户信息
      // 头像
      avatar: 'http://yanxuan.nosdn.127.net/8945ae63d940cc42406c3f67019c5cb6.png',
      // 昵称
      nickname: '点击登录'
    },
    isShowDialog: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 获取缓存数据，判断是否有用户信息
    let userInfo = wx.getStorageSync('userInfo');
    // console.log(userInfo);
    if(userInfo){
      // 有缓存信息，就赋值，那么页面就会显示头像、昵称
      this.setData({
        userInfo:{
          avatar: userInfo.avatar,
          nickname: userInfo.nickname
        }
      });
    }else{
      this.setData({
        userInfo:{
          avatar: this.data.userInfo.avatar,
          nickname: this.data.userInfo.nickname
        }
      });
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /**
   * 弹窗：选择获取用户信息，授权
   */
  getUserInfo(){
    this.setData({
      isShowDialog: true
    });
  },
  /**
   * 隐藏弹窗
   */
  onCloseLoginDialog(){
    this.setData({
      isShowDialog: false
    });
  },

  /**
   * 用户授权登录，触发的事件方法  bindgetuserinfo="onWechatLogin"
   */
  onWechatLogin(e){
    // let that = this;
    
    console.log(e);
    if(e.detail.errMsg==='getUserInfo:ok'){
      // 允许授权，获取用户信息（保存到缓存里面）
      let userInfo = e.detail.userInfo;
      // 需要调wx.login() 获取到 code(可以给到后台获取用户的 openid)
     
      wx.login({
        success: (res)=>{
          console.log("微信登录相应结果：\n",res);
          console.log("临时登录code：\n",res.code);
          if(res.code){
            // 请求后台，进行用户登录的数据操作
            wx.request({
              // url: 'https://nideshop.ttxtouring.com/api/auth/loginByWeixin',
              url: 'http://127.0.0.1:8360/api/auth/loginByWeixin',
              method: 'post',
              data: {
                code: res.code,
                userInfo: e.detail,
                appid:'wx0866ea03d94a244c',
                secret:'c2546c8eeba44eeb629a4ff6249a4a06'
              },
              header: {
                'content-type': 'application/json', // 默认值
                'X-Nideshop-Token':wx.getStorageSync('token')
              },
              success: (res)=>{
                console.log(res.data)
                let udata = res.data;
                if(udata.errno===0){
                //设置本地储存token
                  wx.setStorageSync('token',res.data.data.token);
                  // console.log("本地token：",wx.getStorageSync('token'));
                  // 成功对接后台了，记录缓存
                  this.setData({
                    userInfo: {
                      avatar: userInfo.avatarUrl,
                      nickname: userInfo.nickName
                    },
                    isShowDialog: false
                  });
            
                  wx.showToast({
                    title: '登录成功',
                    icon: 'success'
                  })
                  // 记录到缓存
                  wx.setStorageSync('userInfo', udata.data.userInfo)

                }else{
                  // console.log(this.data.code);
                  wx.showToast({
                    title: '请求失败，请联系客服',
                    icon: 'error'
                  })
                  this.setData({
                    isShowDialog: false
                  });
                }
              }
            })
          }
        }
      })

    }
  }
})